package com.mjf.scala.chapter07

/**
 * 元组
 */
object Scala08_TestTuple {
  def main(args: Array[String]): Unit = {

    // 创建元组对象   默认可以放的元素最大个数为22，可以通过一些方法扩展
    val tuple: (String, String, Int) = ("100", "lucy", 18)

    // 访问元组中的元素
    println(tuple._1)   // 100
    println(tuple._2)   // lucy
    println(tuple._3)   // 18
    // 通过索引访问数据
    println(tuple.productElement(1))    // lucy

    // 通过迭代器访问数据
    for (elem <- tuple.productIterator) {
      println(elem)
    }

    // map集合中的键值对其实就是一种特殊的元组，元组中元素的个数是2个，我们称之为对偶元组
    val map1: Map[String, Int] = Map("a" -> 1, "b" -> 2)
    val map2: Map[String, Int] = Map(("a", 1), ("b", 2))
    println(map1)
    println(map2)

  }
}
